This file describes the PolyTrans import converter plug-in module for 3DS MAX and its various dialog box options (screen snapshot shown below). There is also a corresponding PolyTrans export converter plug-in module. Please note that you must own a copy of 3DS MAX in order to use these data converter plug-ins.

Bitmaps Meshes NURBS Enables Animation
[Page1] [Page1] [Page1] [Page1] [Page1]

The PolyTrans plug-in modules for 3DS MAX provide MAX users with access to more than 2 dozen new import and export converter 3D file formats. In reality, only 2 physical plug-in modules are added to the 3DS MAX 'plugins' directory, but these 2 plug-ins then fool 3DS MAX into believing it has full access to all of the normal PolyTrans import/export converter modules.


The File Import Process using PolyTrans

Once the PolyTrans plug-in modules have been installed in 3DS MAX, a typical import process proceeds as follows:


"Bitmap Conversion" Dialog Box Options

This dialog box controls how referenced bitmap files will be handled during the import into 3DSMAX. The three options are basically:

No Bitmap Conversion or Bitmap Filename Changes (Radio Button)

If this radio button is chosen then any bitmap reference imported into 3DSMAX will not be changed, its filename extension won't be changed, the path to the bitmap will not be changed and no bitmap conversion will be done.

Convert all Bitmap File References To... (Radio Button)

Rather than convert referenced bitmap images to another file format this radio button (when selected) simply changes all the file extensions on bitmap files to a specific type. For example, if set to "TIFF" then all bitmap filenames imported into the 3DSMAX will be changed so that their file extensions end in ".tif". This is a useful option is you already have all of the referenced texture maps converted to the desired file format (either from a previous invocation of this import converter or by using a batch bitmap conversion program).

Auto-Convert Bitmap Files to Another Format (Radio Button)

If this radio button is selected then all 2d bitmap textures which are currently defined and referenced by the internal NuGraf/PolyTrans database scene will be automatically tagged then converted to a new user-specified 2d bitmap file format. For example, if you are importing a Lightwave scene to 3DSMAX, and the Lightwave file references IFF bitmap files then this option can be enabled so that the IFF images get converted to TIFF format automatically.

If the bitmap texture(s) cannot be found in the location specified by the pathname prepended to the texture filename then the export converter will search for the texture(s) in all directories specified in the 3DSMAX 'Bitmaps' file search paths (these can be modified by choosing the 'File/Configure Paths' dialog box and clicking the 'Bitmaps' tab).

Bitmap File Format (Combo Box)

This combo box lists the destination bitmap file format.

Bitmap Bits/Pixel: 2, 4, 8, 24 (Combo Box)

This combo lists determine the number of bits/pixel to write out to the new 2d bitmap file. The default is 24 bits. A color quantization algorithm will be used for the 2, 4 and 8 bits/pixel output formats. Not all bitmap file formats can accept 2-8 bits/pixel (in particular JPEG).

Dimensions: X = #, Y = #

These two drop-down list boxes determine the X and Y resolution for the converted bitmap file(s):
No Change		= Do not change the X or Y size (default)
Closest			= Use the next highest power-of-2 size
2, 4, 8, ... 256, 512	= Choose a specific size for the X or Y dimension

Confirm Potential Bitmap File Overwrites

If this checkbox is enabled (checkmarked) then the bitmap converter will confirm any potential overwrites of existing bitmap files on disk which have the same filename and extension as the one being written. If this option is disabled then no confirmation will be made.

Save Converted Bitmaps To...

These radio buttons determine where the new bitmap file will be written to. Note that enabling the 'Replace all Bitmap File Paths With This Path:' option or the 'Strip File Paths From All Bitmap References' option below will change the path prefix for the converted bitmap even though it was saved to disk in the location specified by one of these 3 radio buttons:
  • Directory Where Geometry Was Read From. The new bitmaps will be written to the directory where the original geometry file(s) were read from.

  • 3D Studio MAX 'maps' Directory. The new bitmaps will be written to the 3D Studio MAX 'maps' directory.

  • Specific + Browse. The new bitmaps will be written to the directory specified by the text box. This directory can be changed by press the 'Browse' button.

Strip File Paths From All Bitmap References

If this checkbox is check-marked then all bitmap file references will have their filename path removed from them. This is the default because 3DS MAX prefers to locate a bitmap file using the paths specified in its 'File/Configure Paths' dialog box rather than having an absolute (and possible non-portable) absolute path specified for a bitmap file. For example, if a bitmap reference was original 'c:\myfiles\textures\brick.bmp' then enabling this option will change the reference to 'brick.bmp'. If this option is disabled then the filepath and filename to the bitmap reference will not be changed.

Replace all Bitmap File Paths With This Path:

This option allows all bitmap references imported into 3DSMAX to be prefixed with a new filepath. This might be useful, for example, if all of your bitmap files are located in one specific directory or if you wish to change the prefix on the imported bitmap references. This new path will override all other options on this bitmap conversion dialog box (in other words, it will replace a bitmap's file path regardless of any other file path added to the bitmap via other options in this dialog box). To choose the filepath press the "Browse" button. To disable this option, click on the checkbox again so that it comes un-checkmarked.

"Meshes" Dialog Box Options

When importing polygons, or NURBS surfaces converted to polygons, this dialog box specifies options relating to the import of the polygons.

Weld Adjacent Vertices Together

If this checkbox is enabled (check-marked) then a vertex welding operation will be applied to all polygon vertices. Vertex welding collapses adjacent vertices which are within a distance less than or equal to the threshold value specified on the dialog box This welding operation should be performed if the "Assign Smoothing Groups to Mesh Objects" option (see below) is enabled. Note that welding of vertices can only occur within a single object and not between different objects. This option is enabled by default so that the 'Assign Smoothing Groups' option works as expected.

Maximum Distance Between Two Vertices

If the distance between two vertices is less than or equal to this number, and the "Weld Adjacent Vertices Together" checkbox is check- marked (enabled) then the two vertices will be collapsed (welded) into one.

Reverse Orientation of all Polygons and Flip Normals

If this checkbox is enabled (check-marked) then the orientation of all polygons will be reversed. You might want to enable this option if you are finding that the 3DSMAX renderer is displaying only the back- facing polygons rather than the front-facing polygons.

Make Polygon Orientations Consistent (Unify Normals)

For some 3d models, in particular those created using Autodesk's AutoCAD, there is no consistent orientation of the polygons; ie: some polygons of a surface are oriented clockwise (the geometric normal points inward) while the remaining polygons are oriented counterclockwise (the geometric normal points outward). This is a problem for the "Assign Smoothing Groups to Mesh Objects" option below since all of the polygons must have the same orientation in order for the smoothed vertex normals to be computed properly.

If this option is enabled (checkmarked) then a special algorithm will be used to walk over the polygon mesh and reorient each polygon. Note, however, that adjacent polygons MUST share the same vertices for this algorithm to work; you can ensure that the vertices are shared by enabling the "Weld Adjacent Vertices Together" option above.

Vertex Normal Assignment Method

These are important options for the successful import of smoothed polygon data into 3DSMAX. First it must be explained how 3DSMAX assigns normals to each polygon vertex. Two methods are provided internally:
  • If one or more polygons share a single vertex, and the vertex normal is the same for all polygons, then 3DSMAX allows that single normal to be assigned to the vertex. We will call this an 'explicit normal' since it will be explicitly assigned to the vertex by the import converter.

  • If two or more polygons share a single vertex, and each polygon requires a different vertex normal, then 3DSMAX uses the concept of 'smoothing groups' to allow different normals to be assigned to a single vertex (for example, the corner of a square box which requires 3 different vertex normals, all at 90 degrees from each other). Rather than explicitly assign the different normals to the vertex, the import converter assigns one or more smoothing groups to the vertex. Thus, the original vertex normal(s) are lost (thrown away) and replaced with some numbers representing the assigned smoothing groups. At a later stage, during a rendering process, 3DSMAX will use the smoothing groups to recompute the one or more normals assigned to a single vertex. In this manner 3 different normals can be assigned to the corner of a box, for example. A side effect of using smoothing groups is that the vertex normals computed by 3DSMAX using the smoothing group algorithm may not be the same as the original vertex normals imported from the data file. There is currently no method around this problem.

Assign Smoothing Groups to Mesh Objects

If this checkbox is enabled then the import converter will automatically compute and assign smoothing groups to all polygons. This will ensure that the 3DSMAX renderer computes adequate vertex normals if none should exist prior to rendering. This option must be enabled if an object has 'creases' in it where a single vertex can have two or more distinct vertex normals. This option should also be enabled when importing SLP and STL data; if not enabled then the data will appear to have ugly black marks on it after being rendered.

Force One Explicit Normal Per Mesh Vertex

If this checkbox is enabled then the import converter will always force a single vertex normal onto each vertex if one was specified in the imported data file, even if the vertex is known to have 2 or more distinct normals. For smooth surfaces this will probably provide good results. However, if the surface has creases or sharp corners then enabling this option will make all creases and sharp corners disappear - the reason for this is that creases and sharp corners require two or more distinct normals at each vertex, but enabling this option will only allow a single normal to be assigned. This option should also be assigned if the imported data looks faceted, even with the 'Weld Adjacent Vertices' and 'Assign Smoothing Groups' options enabled.

"NURBS" Dialog Box Options

This import converter allows pure NURBS data to be imported from various file formats, including SoftImage, IGES and Wavefront OBJ. Trim curves are also supported. The following dialog box controls how the NURBS surface are imported into 3DSMAX.

Convert NURBS Patches to Polygons

If this checkbox is enabled then all trimmed NURBS surfaces will be converted to polygon meshes prior to import into 3DSMAX. For 3DSMAX versions 2.0 and earlier, this is the default option since these versions cannot import trimmed NURBS data. If this checkbox is disabled then the pure and unmodified trimmed NURBS surfaces will be imported directly into 3DSMAX.

Reverse Orientation of Polygonalized NURBS Patches

If this checkbox is enabled then the orientation of all polygonzied NURBS surfaces will be reversed prior to import into 3DSMAX. This option should be enabled if only the 'back side' of a NURBS object is visible when rendered with the 3DSMAX renderer (alternatively, you can get both sides to appear in a rendering by enabling the 'Force 2 Sided' rendering option in 3DSMAX).

Surface Tolerance

Curve Tolerance

These sliders control the conversion of NURBS surfaces into polygons. The number of polygons used to approximate the true NURBS surface (or, its smoothness) is controlled by the 'Surface Tolerance' slider. Lower values will make the surface smoother but at the expense of a longer tessellation time and more resultant polygons. This slider represents the maximum allowable distance (tolerance) between the true NURBS patch and the tessellated polygonal surface; it is measured as a percentage of an object's maximum bounding box size. For example, if a NURBS patch is being tessellated which is 10x10x10 units in size, and this slider is set to 0.2% then the resultant polygonalized surface will not deviate from the ideal NURBS surface by more than 0.02 units (2% of 10).

Also, the 'Curve Tolerance' slider is used to control the smoothness of the NURBS trimming curves. Smaller values will make trimmed curve regions smoother, but again at the expense of a longer tessellation time and more resultant polygons. This slider represents the maximum allowable distance (tolerance) between the true NURBS curve and the tessellated polygonal curve; it is measured as a percentage of an object's maximum bounding box size (the object on which the curve lies). For example, if a NURBS patch is being tessellated which is 10x10x10 units in size, and this slider is set to 0.2% then the resultant polygonalized NURB curve will not deviate from the ideal NURBS curve by more than 0.02 units (2% of 10).

"Enables" Dialog Box Options

These check boxes control what type of data will be imported into 3DSMAX from the PolyTrans database.

Triangle Mesh

If this option is enabled (checkmarked) then all mesh (polygon) geometry will be imported from the file into 3DSMAX. If disabled then all mesh geometry will be ignored.

Mesh Normals

If this option is enabled (checkmarked) then any vertex normals that are assigned to polygon vertices will be imported.

Texture Coordinates

If this option is enabled (checkmarked) then any (u,v) texture coordinates that are assigned to polygon vertices will be imported. If this option is not enabled then texture maps will not appear on the polygon surfaces.

NURBS Surfaces

If this option is enabled (checkmarked) then NURBS surfaces will be imported. If disabled then NURBS surfaces will be ignored.

NURBS Trim Curves

If this option is enabled (checkmarked) then trim curves will be assigned to their associated NURBS surfaces, if the curves exist. If disabled then no trim curves will be assigned to the NURBS surfaces.

Hierarchy & Keyframe 0 Data

If this option is enabled (checkmarked) then the hierarchical relationship of objects in the scene will be imported. This data will also use the scaling, rotation and translation data used by animation keyframe # 0.

Animation Data

If this option is enabled (checkmarked) then object and camera animation data which is currently contained within the internal database will be imported into 3DSMAX. If this option is grayed out then animation data can only be imported from PolyTrans via the .3ds file format.

Atmospherics & Backgrounds

If this option is enabled (checkmarked) then fog, mist and background color schemes will be imported into 3DSMAX. If disabled then these effects will be ignored.

Materials

If this option is enabled (checkmarked) then materials will be created and assigned to the geometric objects in the scene. If disabled then no materials will be created.

Bitmap References

If this option is enabled (checkmarked) then all 2D bitmap textures will be assigned to their associated materials. If this option is disabled then no bitmap references will be created and none will be assigned to the 3DS MAX materials (this basically disables texture mapping).

Cameras

If this option is enabled (checkmarked) then the parameters of the current default camera will be imported.

Lights

If this option is enabled (checkmarked) then ambient, point, directional and spot light sources will be imported.

Delete Unreferenced Materials

If this option is enabled (checkmarked) then all imported materials which are not referenced in any way (such as by a mesh or NURBS surface) will be deleted prior to import into 3DSMAX.

"Animation" Dialog Box Options

As the dialog box snapshot shows, animation data can only be converted by the stand-alone version of PolyTrans (or NuGraf). This is achieved using the following steps:

In the near future (if not now) this PolyTrans plug-in will directly support import of animation data.